package com.usdt.system.service;

import java.math.BigDecimal;

import org.apache.commons.lang3.StringUtils;

import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.service.IService;
import com.usdt.common.core.domain.entity.UsdtTransfer;
import com.usdt.common.exception.ServiceException;
import com.usdt.system.domain.req.UsdtTransferReqVo;

/**
 * <p>
 *  服务类
 * </p>
 *
 * @author LG
 * @since 2024-09-18
 */
public interface IUsdtTransferService extends IService<UsdtTransfer> {
	
	/**
	 * 分页查询
	 * @param vo
	 * @return
	 */
	IPage<UsdtTransfer> listPage(UsdtTransferReqVo vo);
	
	default boolean valid(UsdtTransferReqVo vo) {
		if (StringUtils.isEmpty(vo.getFromAddress())
				&& StringUtils.isEmpty(vo.getToAddress())
				&& StringUtils.isEmpty(vo.getTransactionHash())
				&& StringUtils.isEmpty(vo.getMinValue())
				&& StringUtils.isEmpty(vo.getMaxValue())
				&& vo.getMinBlockDatetime() == null
				&& vo.getMaxBlockDatetime() == null) {
			throw new ServiceException("请输入任意筛选条件");
		}
		if (StringUtils.isNotEmpty(vo.getMinValue())) {
			try {
				vo.setMinValueNum(new BigDecimal(vo.getMinValue()));
			} catch (Exception e) {
				throw new ServiceException("请输入数字类型的金额");
			}
		}
		if (StringUtils.isNotEmpty(vo.getMaxValue())) {
			try {
				vo.setMaxValueNum(new BigDecimal(vo.getMaxValue()));
			} catch (Exception e) {
				throw new ServiceException("请输入数字类型的金额");
			}
		}
		return false;
	}

}
